The present invention relates to data communications between server computers and client computers within the context of data networks. More specifically, a method and apparatus for managing two-way interactive communication devices over the data networks utilizing a link server; wherein the two-way interactive communication devices, such as mobile devices, cellular phones, landline telephones and Internet appliance controllers, have generally limited computing resources such as computing power, memory and graphical display capability.
The Internet is a rapidly growing communication network of interconnected computers and computer networks around the world. Together, these millions of connected computers form a vast repository of hyperlinked information that is readily accessible by any of the connected computers from anywhere at any time. To provide mobility and portability of the Internet, wireless Internet computing devices were introduced and are capable of communicating, via wireless data networks, with the computers on the Internet. With the wireless data networks, people, as they travel or move about, are able to perform, through the wireless computing devices, exactly the same tasks they could do with computers on the Internet.
Regular mobile phones can return calls, check voice mail or enable users to be available for teleconferences anywhere at any time. However, new two-way interactive communication devices, such as mobile devices or mobile phones, would meld voice, data, and personal digital assistants (PDA) functionality into a single portable device that is not just reactive to calls but also proactive, accessing a myriad of public and enterprise information services in the Internet. The evolution of the interactive mobile device or mobile phones has been evidently fueled by the demand of users for immediate access to the information they are looking for in the Internet.
The client computer, or two-way communication device, which may constitute a mobile computing device, a cellular phone, a landline telephone, or an Internet appliance controller, typically has very limited computing and storage capabilities. The limited computing and storage capabilities, however, allows for increased portability and mobility, as such typical two-way communication devices are designed small in size, light in weight, low in power consumption, and as economically as possible. Such designs, having very limited computing power and storage capacity, are often classified as thin designs, the thin designs are typically equivalent to less than one percent of what is provided in a typical desktop or portable computer and the memory capacity thereof is generally less than 250 kilobytes. Accordingly, the thin client devices do not have extra memory space to store large amount of data.
Furthermore, currently available thin design client computers (i.e. thin clients) generally only provide for the browsing of information services contained on a network, such as the Internet, due to their limited computing and storage capabilities. Accordingly, the thin client typically can not support or provide ancillary services, such as faxing, printing, downloading, etc., due in part to the limited computing and storage capabilities associated with these devices. Such ancillary services typically can not, and should not, be implemented by the thin client as they would correspondingly increase the complexity of the thin client, thereby increasing the size, weight, and power consumption of the thin client. Moreover, such ancillary services require and generate large amount of data that should not be sent over wireless networks, due to cost, data loss, and logistical considerations.
Further, such ancillary services are difficult to implement on the web server side, as the thin client would typically incur a service cost from the web server for performing a particular service, such as faxing, on behalf of a thin client request. Alternately, in the case of a print request from a thin client, the web server would require access to the thin client""s network in order for the web server to send a print request to a thin clients designated printer.
To illustrate the problem, consider the situation in which a thin client wishes to fax an e-mail message from a mail service to another destination. One proposed solution is for the mail service to download the entire message (with attachments) to the thin client, create a fax image of the e-mail message, and then send the fax directly from the thin client to the desired destination. The shortcomings of this approach, however, is that the entire e-mail message must be downloaded over the wireless network, along with any associated attachments. Further, the thin client must have sufficient memory to store the entire e-mail message (with attachments), must be able to render the e-mail and attachments as a facsimile image, and must be able to place facsimile calls via the voice network. As a result, the complexity of the thin client is necessarily increased by the corresponding facilities which would be required in order to support such operations. Moreover, as new attachment types are introduced it is unlikely they will be supported by the existing thin client, as the thin clients are often difficult or impossible to. upgrade with new software.
Another proposed solution is for the mail service to render the e-mail message and fax it from the mail service application to the desired destination. Accordingly, this would remedy the problem of transferring data over the wireless network, thereby reducing the complexity associated with such a transfer, which would in turn allow the operation and design of the thin client to remain relatively simple. The sending of data by fax, in the current example, however, incurs some type of service cost. Accordingly, the typical service provider will require some means to recover the costs associated with such a service, typically by charging the user/client a service fee, as in the current example, by charging the user for each fax sent. As such, the mail service or web server would be required to establish a xe2x80x9crelationshipxe2x80x9d (i.e.-service account) with each user/client in order to implement a service fee accounting system for recouping associated service fees. This proposed solution, however, has limitations in that the user would be required to establish a xe2x80x9crelationshipxe2x80x9d (i.e.-service account) with every web service for which the user/client wants a certain service performed. Further, each web service selected to provide an ancillary service, such as faxing, would have to establish a billing and accounting system in order to recover costs associated with providing the services, along with establishing an infrastructure for providing such services.
Thus, there is a great need for providing thin clients with the ability to generate requests for data and direct the result of such requests to an intermediate device or link server which could process the result in accordance with a certain request protocol. Such a system would allow the thin client to remain simple in design and would thereby only require a single xe2x80x9crelationshipxe2x80x9d (i.e.-service account) to be established between the thin client and the intermediate device or link server. Further, the intermediate device or link server would be relatively easy to augment in order to provide additional features in the future based on a desired service requested by a user/client.
The present invention is directed to a system configured to manage and process service requests within a data network. The system comprises a link server device that is configured to receive a service request from an interactive communication device, wherein the link server device attaches link server information to the service request indicating the operational capabilities of the link server device. A server device configured to receive the service request from the link server device and supply a service request response based upon information in the service request and the link server information. Wherein the link server executes a service command upon receipt of the service request response and supplies a status response to the interactive communication device.
In one embodiment of the invention, the service request response comprises a multi-part response, the multi-part response comprising service request data and the status response.
In another embodiment of the invention, the status response supplied to the interactive communication device contains the service request data.
In yet another embodiment of the invention, a service device is coupled to the link server device, wherein the service device performs the service indicated by the service command.
In yet still another embodiment of the invention, a system containing program code of managing and processing service requests within a data network, the system comprising:
first program code for supplying a service request to a link server device, wherein the link server device comprises program code for attaching link server information to the service request, the link server information indicating the operational capabilities of the link server device;
second program code for supplying the service request to a server device configured to supply a service request response based upon information contained in the service request and the link server information; wherein the service request response comprises a multi-part response including service request data and a status response;
third program code for executing a service command upon the receipt of the service request response; and
fourth program code for supplying a status response to a source of the service request.
An object of the present invention is to provide thin clients with the ability to generate requests for data and direct the result of such requests to an intermediate device or link server which can process the result in accordance with a certain request protocol.
Another object of the present invention is to provide a system that would allow the thin client to remain simple in design and only require a single xe2x80x9crelationshipxe2x80x9d (i.e.-service account) to be established between the thin client and the intermediate device or link server.
Yet another object of the present invention is to provide a link server capable of executing service requests and providing a variety of ancillary services.